package com.naiterui.ehp.bs.doctor.service;

import java.util.List;

import com.naiterui.common.repository.page.PageVO;
import com.naiterui.ehp.bp.support.exception.BusinessException;
import com.naiterui.ehp.bs.doctor.vo.param.ProductSearchParam;
import com.naiterui.ehp.bs.doctor.vo.product.CategoryVO;
import com.naiterui.ehp.bs.doctor.vo.product.CueWordVO;
import com.naiterui.ehp.bs.doctor.vo.product.ProductDetailVO;
import com.naiterui.ehp.bs.doctor.vo.product.ProductInfoVO;

/**
 * @author fwd
 */
public interface IProductService {

    /**
     * 搜索商品
     *
     * @param productSearch param
     *
     * @return VO
     */
    PageVO<ProductInfoVO> searchProduct(ProductSearchParam productSearch) throws BusinessException;

    /**
     * 获取商品详情
     *
     * @param doctorId 医生Id
     * @param skuId    skuId
     *
     * @return VO
     */
    ProductDetailVO getProductDetailInfo(Long doctorId, Long skuId) throws BusinessException;

    /**
     * 获取商品提示词
     *
     * @param doctorId 医生ID
     * @param key      搜索关键字
     *
     * @return VO
     */
    List<CueWordVO> getCueWord(Long doctorId, String key) throws BusinessException;

    /**
     * 获取商品分类
     *
     * @param doctorId 医生ID
     *
     * @return VO
     */
    List<CategoryVO> getCategoryInfo(Long doctorId) throws BusinessException;
}
